// VCD Simple PropertyDlg.h : header file
//

#if !defined(AFX_VCDSIMPLEPROPERTYDLG_H__FE179C98_4D80_4DFD_BE48_89A5E3BE32BF__INCLUDED_)
#define AFX_VCDSIMPLEPROPERTYDLG_H__FE179C98_4D80_4DFD_BE48_89A5E3BE32BF__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

//<<include_simpleclass
//>>
/////////////////////////////////////////////////////////////////////////////
// CVCDSimplePropertyDlg dialog

class CVCDSimplePropertyDlg : public CDialog
{
// Construction
//<<public_decl
public:
	bool selectDevice();
//>>
	CVCDSimplePropertyDlg(CWnd* pParent = NULL);	// standard constructor



// Dialog Data
	//{{AFX_DATA(CVCDSimplePropertyDlg)
	enum { IDD = IDD_VCDSIMPLEPROPERTY_DIALOG };
		// NOTE: the ClassWizard will add data members here
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CVCDSimplePropertyDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
//<<protected_decl
protected:
	HICON m_hIcon;

	DShowLib::Grabber m_Grabber;

	int m_wbOnePushUpdateCount;

	// VCDProperty interface pointers
	DShowLib::tIVCDAbsoluteValuePropertyPtr m_pGainAbsolute;
	DShowLib::tIVCDSwitchPropertyPtr m_pGainAuto;
	DShowLib::tIVCDAbsoluteValuePropertyPtr m_pExposureAbsolute;
	DShowLib::tIVCDSwitchPropertyPtr m_pExposureAuto;
	DShowLib::tIVCDRangePropertyPtr m_pWBRedRange;
	DShowLib::tIVCDRangePropertyPtr m_pWBGreenRange;
	DShowLib::tIVCDRangePropertyPtr m_pWBBlueRange;
	DShowLib::tIVCDSwitchPropertyPtr m_pWBAuto;
	DShowLib::tIVCDButtonPropertyPtr m_pWBOnePush;

	// The UI controls
	CSliderCtrl* m_pExposureSlider;
	CStatic* m_pExposureStatic;
	CButton* m_pExposureAutoCheck;

	CSliderCtrl* m_pGainSlider;
	CStatic* m_pGainStatic;
	CButton* m_pGainAutoCheck;

	CSliderCtrl* m_pWbRedSlider;
	CStatic* m_pWbRedStatic;
	CSliderCtrl* m_pWbGreenSlider;
	CStatic* m_pWbGreenStatic;
	CSliderCtrl* m_pWbBlueSlider;
	CStatic* m_pWbBlueStatic;
	CButton* m_pWbAutoCheck;
	CButton* m_pWbOnePushButton;
//>>

	// Generated message map functions
	//{{AFX_MSG(CVCDSimplePropertyDlg)
	virtual BOOL OnInitDialog();
	afx_msg void OnExposureAuto();
	afx_msg void OnGainAuto();
	afx_msg void OnWbAuto();
	afx_msg void OnWbOnepush();
	afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
public:
	afx_msg void OnTimer( UINT_PTR nIDEvent );
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_VCDSIMPLEPROPERTYDLG_H__FE179C98_4D80_4DFD_BE48_89A5E3BE32BF__INCLUDED_)
